//  flatten 去掉数组里面的一层数组的括号

// Array.isArray([]) 判断是否是数组

var arr = [1, [2, [3, [4]], 5], [6, 7]];
var newArr = [];


// => [1, 2, [3, [4]], 5, 6, 7]

for(var i = 0; i < arr.length; i++){
  var tempArr = arr[i]
  // 如果arr里面的元素是数组，就循环里面的数组，拿到元素添加到newArr
  if( Array.isArray(tempArr) ){
    for(var j = 0; j < tempArr.length; j++){
      newArr.push(tempArr[j])
    }
  }else{
    newArr.push(arr[i])
  }
}




// => [1, 2, 3, 4, 5, 6, 7]

// for (var i = 0; i < arr.length; i++) {
//   var tempArr = arr[i]
//   // 如果arr里面的元素是数组，就循环里面的数组，拿到元素添加到newArr
//   if (Array.isArray(tempArr)) {
//     for (var j = 0; j < tempArr.length; j++) {
//       var towArr = tempArr[j]
//       if (Array.isArray(towArr)) {
//         for (var z = 0; z < towArr.length; z++) {
//           var threeArr = towArr[z]
//           if (Array.isArray(threeArr)) {
//             for (var x = 0; x < threeArr.length; x++) {
//               newArr.push(threeArr[x])
//             }
//           } else {
//             newArr.push(towArr[z])
//           }
//         }
//       } else {
//         newArr.push(tempArr[j])
//       }
//     }
//   } else {
//     newArr.push(arr[i])
//   }
// }


console.log(newArr)